home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / docs / mags / NoCover104.lha / NoCover104 / aa / extra / notizeintrag.php < prev    next >
Text File  |  2002-09-21  |  6KB  |  191 lines

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
  2. <!-- Datei: notizeintrag.php -->
  3. <!-- 15.09.2002, Michael Christoph <michael@meicky-soft.de> -->
  4.  
  5. <HTML>
  6. <HEAD>
  7.   <META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">
  8.   <META HTTP-EQUIV="content-language" CONTENT="de">
  9.   <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
  10. </HEAD>
  11.  
  12. <BODY>
  13.  
  14. <?php
  15.  
  16.   /* erstes Element leer, damit Monat 1 = Januar ist */
  17.   $monatstr = array("","Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
  18.  
  19.  
  20. function connect()
  21. {
  22.   /*
  23.   ** die folgenden vier Variablen müssen in der Praxis in einer eigenen Datei
  24.   ** hinterlegt werden, die nicht im Webspace des ISP liegt (i.d.R. htdocs-
  25.   ** Verzeichnis), sondern ausserhalb. Nur so ist ein wirksamer Schutz möglich.
  26.   ** einbindung mittels     include("/pfad/dateiname.php");
  27.   ** Außerdem ergibt sich der Vorteil, daß die Datei lokal und beim ISP
  28.   ** funktioniert. Lediglich die Parameter der Include-Datei müssen angepaßt werden.
  29.   */
  30.   $mysqlhost     = "localhost";  /* mySQL Server */
  31.   $mysqluser     = "root";       /* User */
  32.   $mysqlpasswd   = "";           /* Password */
  33.   $mysqldatabase = "notizbuch";  /* Datenbankname */
  34.  
  35.   $connID = @mysql_pconnect($mysqlhost, $mysqluser, $mysqlpasswd);
  36.  
  37.   if($connID)
  38.   {
  39.     mysql_select_db($mysqldatabase);  /* Datenbank connectieren */
  40.     return( $connID );
  41.   }
  42.   else
  43.   {
  44.     echo "<BR><font color='red'>Keine Verbindung zur Datenbank möglich !</font><BR>\n";
  45.     echo "Fehlerursache: " . mysql_error() . "<BR>\n";
  46.     exit();  /* Skript abbrechen */
  47.   }
  48. }
  49.  
  50. function eintrag_zeigen($dbid,$dbdatum,$dbuhrzeit,$dbtext)
  51. {
  52.   /* einen Tabelleneintrag im Browser anzeigen zum bearbeiten */
  53.   echo "<tr>\n";
  54.   echo "<form name='notizbuch_$dbid' action='notizeintrag.php' method='post'>\n";
  55.   echo "  <td><input type=text   name='uhrzeit'       value='$dbuhrzeit' maxlength=5></td>\n";
  56.   echo "  <td><input type=text   name='text'          value='$dbtext'    maxlength=100></td>\n";
  57.   echo "  <td><input type=hidden name='datum'         value='$dbdatum'>\n";
  58.   echo "      <input type=hidden name='id'            value='$dbid'>\n";
  59.   echo "      <input type=submit name='form_loeschen' value='löschen'>\n";
  60.   echo "      <input type=submit name='form_aendern'  value='ändern'>\n";
  61.   echo "  </td>\n";
  62.   echo "</form>\n";
  63.   echo "</tr>\n";
  64. }
  65.  
  66. function eintrag_neu($dbdatum,$dbuhrzeit,$dbtext)
  67. {
  68.   /* einen neuen Eintrag erfassen */
  69.   $result = mysql_query("INSERT INTO notizbuch VALUES(0,'$dbdatum','$dbuhrzeit','$dbtext');");
  70.   if($result)
  71.   {
  72.     $newid = mysql_insert_id($result);
  73.   }
  74.   else
  75.   {
  76.     echo "<BR><font color='red'>EINFÜGEN WAR NICHT MÖGLICH !</font><BR>\n";
  77.     echo "Fehlerursache: " . mysql_error() . "<BR>\n";
  78.   }
  79. }
  80.  
  81. function eintrag_aendern($dbid,$dbdatum,$dbuhrzeit,$dbtext)
  82. {
  83.   /* einen bestehenden Eintrag verändern */
  84.   $result = mysql_query("REPLACE INTO notizbuch VALUES($dbid,'$dbdatum','$dbuhrzeit','$dbtext');");
  85.   if($result)
  86.   {
  87.   }
  88.   else
  89.   {
  90.     echo "<BR><font color='red'>ÄNDERN WAR NICHT MÖGLICH !</font><BR>\n";
  91.     echo "Fehlerursache: " . mysql_error() . "<BR>\n";
  92.   }
  93. }
  94.  
  95. function eintrag_loeschen($dbid)
  96. {
  97.   /* einen bestehenden Eintrag aus der Tabelle löschen */
  98.   $result = mysql_query("DELETE FROM notizbuch WHERE id = $dbid;");
  99.   if($result)
  100.   {
  101.   }
  102.   else
  103.   {
  104.     echo "<BR><font color='red'>LÖSCHEN WAR NICHT MÖGLICH !</font><BR>\n";
  105.     echo "Fehlerursache: " . mysql_error() . "<BR>\n";
  106.   }
  107. }
  108.  
  109.  
  110.   /* zuerst einmal die Verbindung zur Datenbank herstellen */
  111.   connect();
  112.   
  113.  
  114.   /* wurde ein Formular übergeben ? */
  115.   if(isset($id))
  116.   {
  117.     /* je nach gedrücktem Schalter verzweigen */
  118.     if(isset($form_neu))      eintrag_neu($datum,$uhrzeit,$text);
  119.     if(isset($form_aendern))  eintrag_aendern($id,$datum,$uhrzeit,$text);
  120.     if(isset($form_loeschen)) eintrag_loeschen($id);
  121.  
  122.     /* zur anzeige unten wird das Datum wieder zerlegt erwartet */
  123.     /* mit substr() wird der String zerlegt und */
  124.     /* mit sprintf() evtl. führende Nullen entfernt */
  125.     $jahr  = sprintf("%d",substr($datum,0,4));
  126.     $monat = sprintf("%d",substr($datum,5,2));
  127.     $tag   = sprintf("%d",substr($datum,8,2));
  128.   }
  129.  
  130.   /* ab hier Anzeige des Tabelleninhaltes (der Notizen) */
  131.   if(isset($jahr))
  132.   {
  133.     $suchdatum = date("Y-m-d",mktime(0,0,0,$monat,$tag,$jahr));  /* formatieren als jahr-monat-tag */
  134.  
  135.     echo "Eintragungen für\n<H1>$tag. $monatstr[$monat] $jahr</H1><BR><BR>\n";
  136.  
  137.     echo "<table border=0>\n";
  138.     echo "  <tr><th>Uhrzeit</th><th>Eintragung</th><th>Aktionen</th></tr>\n";
  139.  
  140.     /* Datenbankabfrage starten */
  141.     $result = mysql_query("SELECT * FROM notizbuch WHERE datum = '$suchdatum' ORDER BY uhrzeit");
  142.     if($result)
  143.     {
  144.       /* Anzahl Zeilen ermitteln */
  145.       $rows = mysql_num_rows($result);
  146.       if($rows > 0)
  147.       {
  148.         /* Tabellen-Inhalt ausgeben */
  149.         while($dbentry = mysql_fetch_object($result))
  150.         {
  151.           eintrag_zeigen($dbentry->id,
  152.                          $dbentry->datum,
  153.                          substr($dbentry->uhrzeit,0,5),  /* Sekunden weg */
  154.                          $dbentry->text);
  155.         }
  156.       }
  157.       else
  158.       {
  159.         echo "<tr><td colspan=3><i>keine Eintragungen vorhanden</i></td></tr>\n";
  160.       }
  161.     }
  162.     //else: Datenbank existiert nicht oder SQL-Fehler
  163.  
  164.     /* entfernt die Ergebnisdaten aus dem Speicher */
  165.     mysql_free_result($result);
  166.  
  167.     /* zum Schluß noch eine leere Eingabezeile erzeugen */
  168.     echo "<tr>\n";
  169.     echo "<form name='notizbuch_0' action='notizeintrag.php' method='post'>\n";
  170.     echo "  <td><input type=text   name='uhrzeit'  value='' maxlength=5></td>\n";
  171.     echo "  <td><input type=text   name='text'     value='' maxlength=100></td>\n";
  172.     echo "  <td><input type=hidden name='datum'    value='$suchdatum'>\n";
  173.     echo "      <input type=hidden name='id'       value='0'>\n";
  174.     echo "      <input type=submit name='form_neu' value='neu erfassen'>\n";
  175.     echo "  </td>\n";
  176.     echo "</form>\n";
  177.     echo "</tr>\n";
  178.     echo "\n";
  179.     echo "</table>\n";
  180.   }
  181.   else
  182.   {
  183.     /* beim ersten Aufruf ist noch kein Datum vorhanden */
  184.     /* daher wird auch gar nichts angezeigt */
  185.   }
  186. ?>
  187.  
  188. </BODY>
  189. </HTML>
  190.  
  191.